﻿//=====================================================================================================
// LocalizationLibrary
// The Localization Library is a collection of reusable software components that provide 
// support for localization. This library enables you to localize WPF, Silverlight and WP7 applications.
// (http://localizationlibrary.codeplex.com)
//=====================================================================================================
// Author: Nicola Gallo (Website: www.nicola.gallo.name, Email: nicolagmt@hotmail.it) 
//=====================================================================================================

namespace ReflectionStudio.LocalizationLibrary.Attributes
{
    //.NET References
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    /// <summary>
    /// Indicates that the target method is the method that the engine have to invoke to notify the property change.
    /// </summary>
    [AttributeUsage(AttributeTargets.Method, AllowMultiple = false)]
    public class OnPropertyChangeMethodAttribute : Attribute, ILocalizationAttribute
    {
        //Constructors

        /// <summary>
        /// Creates a new instance of the <see cref="LocalizeAttribute"/> class.
        /// </summary>
        /// <param name="parameterName">The key of the resource.</param>
        public OnPropertyChangeMethodAttribute(String parameterName)
        {
            this.ParameterName = parameterName;
        }

        //Properties

        /// <summary>
        /// Gets the parameter name that the engine have to use to pass the property's name.
        /// </summary>
        public String ParameterName { get; private set; }
    }
}